79 research outputs found

    Fast polynomial evaluation and composition

    Get PDF
    The library \emph{fast\_polynomial} for Sage compiles multivariate polynomials for subsequent fast evaluation. Several evaluation schemes are handled, such as H\"orner, divide and conquer and new ones can be added easily. Notably, a new scheme is introduced that improves the classical divide and conquer scheme when the number of terms is not a pure power of two. Natively, the library handles polynomials over gmp big integers, boost intervals, python numeric types. And any type that supports addition and multiplication can extend the library thanks to the template design. Finally, the code is parallelized for the divide and conquer schemes, and memory allocation is localized and optimized for the different evaluation schemes. This extended abstract presents the concepts behind the \emph{fast\_polynomial} library. The sage package can be downloaded at \url{http://trac.sagemath.org/sage_trac/ticket/13358}

    Uniqueness domains and non singular assembly mode changing trajectories

    Get PDF
    Parallel robots admit generally several solutions to the direct kinematics problem. The aspects are associated with the maximal singularity free domains without any singular configurations. Inside these regions, some trajectories are possible between two solutions of the direct kinematic problem without meeting any type of singularity: non-singular assembly mode trajectories. An established condition for such trajectories is to have cusp points inside the joint space that must be encircled. This paper presents an approach based on the notion of uniqueness domains to explain this behaviour

    New data structure for univariate polynomial approximation and applications to root isolation, numerical multipoint evaluation, and other problems

    Full text link
    We present a new data structure to approximate accurately and efficiently a polynomial ff of degree dd given as a list of coefficients. Its properties allow us to improve the state-of-the-art bounds on the bit complexity for the problems of root isolation and approximate multipoint evaluation. This data structure also leads to a new geometric criterion to detect ill-conditioned polynomials, implying notably that the standard condition number of the zeros of a polynomial is at least exponential in the number of roots of modulus less than 1/21/2 or greater than 22.Given a polynomial ff of degree dd with f12τ\|f\|_1 \leq 2^\tau for τ1\tau \geq 1, isolating all its complex roots or evaluating it at dd points can be done with a quasi-linear number of arithmetic operations. However, considering the bit complexity, the state-of-the-art algorithms require at least d3/2d^{3/2} bit operations even for well-conditioned polynomials and when the accuracy required is low. Given a positive integer mm, we can compute our new data structure and evaluate ff at dd points in the unit disk with an absolute error less than 2m2^{-m} in O~(d(τ+m))\widetilde O(d(\tau+m)) bit operations, where O~()\widetilde O(\cdot) means that we omit logarithmic factors. We also show that if κ\kappa is the absolute condition number of the zeros of ff, then we can isolate all the roots of ff in O~(d(τ+logκ))\widetilde O(d(\tau + \log \kappa)) bit operations. Moreover, our algorithms are simple to implement. For approximating the complex roots of a polynomial, we implemented a small prototype in \verb|Python/NumPy| that is an order of magnitude faster than the state-of-the-art solver \verb/MPSolve/ for high degree polynomials with random coefficients

    Fast real and complex root-finding methods for well-conditioned polynomials

    Get PDF
    Given a polynomial pp of degree dd and a bound κ\kappa on a condition number of pp, we present the first root-finding algorithms that return all its real and complex roots with a number of bit operations quasi-linear in dlog2(κ)d \log^2(\kappa). More precisely, several condition numbers can be defined depending on the norm chosen on the coefficients of the polynomial. Let p(x)=_k=0da_kxk=_k=0d(dk)b_kxkp(x) = \sum\_{k=0}^d a\_k x^k = \sum\_{k=0}^d \sqrt{\binom d k} b\_k x^k. We call the condition number associated with a perturbation of the a_ka\_k the hyperbolic condition number κ_h\kappa\_h, and the one associated with a perturbation of the b_kb\_k the elliptic condition number κ_e\kappa\_e. For each of these condition numbers, we present algorithms that find the real and the complex roots of pp in O(dlog2(dκ) polylog(log(dκ)))O\left(d\log^2(d\kappa)\ \text{polylog}(\log(d\kappa))\right) bit operations.Our algorithms are well suited for random polynomials since κ_h\kappa\_h (resp. κ_e\kappa\_e) is bounded by a polynomial in dd with high probability if the a_ka\_k (resp. the b_kb\_k) are independent, centered Gaussian variables of variance 11

    Non-singular assembly mode changing trajectories in the workspace for the 3-RPS parallel robot

    Get PDF
    Having non-singular assembly modes changing trajectories for the 3-RPS parallel robot is a well-known feature. The only known solution for defining such trajectory is to encircle a cusp point in the joint space. In this paper, the aspects and the characteristic surfaces are computed for each operation mode to define the uniqueness of the domains. Thus, we can easily see in the workspace that at least three assembly modes can be reached for each operation mode. To validate this property, the mathematical analysis of the determinant of the Jacobian is done. The image of these trajectories in the joint space is depicted with the curves associated with the cusp points

    An algebraic method to check the singularity-free paths for parallel robots

    Get PDF
    Trajectory planning is a critical step while programming the parallel manipulators in a robotic cell. The main problem arises when there exists a singular configuration between the two poses of the end-effectors while discretizing the path with a classical approach. This paper presents an algebraic method to check the feasibility of any given trajectories in the workspace. The solutions of the polynomial equations associated with the tra-jectories are projected in the joint space using Gr{\"o}bner based elimination methods and the remaining equations are expressed in a parametric form where the articular variables are functions of time t unlike any numerical or discretization method. These formal computations allow to write the Jacobian of the manip-ulator as a function of time and to check if its determinant can vanish between two poses. Another benefit of this approach is to use a largest workspace with a more complex shape than a cube, cylinder or sphere. For the Orthoglide, a three degrees of freedom parallel robot, three different trajectories are used to illustrate this method.Comment: Appears in International Design Engineering Technical Conferences & Computers and Information in Engineering Conference , Aug 2015, Boston, United States. 201

    On the determination of cusp points of 3-R\underline{P}R parallel manipulators

    Get PDF
    This paper investigates the cuspidal configurations of 3-RPR parallel manipulators that may appear on their singular surfaces in the joint space. Cusp points play an important role in the kinematic behavior of parallel manipulators since they make possible a non-singular change of assembly mode. In previous works, the cusp points were calculated in sections of the joint space by solving a 24th-degree polynomial without any proof that this polynomial was the only one that gives all solutions. The purpose of this study is to propose a rigorous methodology to determine the cusp points of 3-R\underline{P}R manipulators and to certify that all cusp points are found. This methodology uses the notion of discriminant varieties and resorts to Gr\"obner bases for the solutions of systems of equations
    corecore